package com.navi.core.mysqlEntity;

import com.alibaba.fastjson.annotation.JSONField;
import com.navi.core.entity.BaseEntity;

import javax.persistence.*;
import java.sql.Timestamp;

@Entity
@Table(name = "bis_data", schema = "icim_jn", catalog = "")
public class BisDataEntity extends BaseEntity {
    private String dataSeqId;
    private String unqSeqId;
    private String dataCate;
    private String dataId;
    private String dataExt;
    private String dataItem;
    private String ext1;
    private String ext2;
    private String ext3;
    private String ext4;
    private String ext5;
    private String dataDesc;
    private String evtUsr;
    @JSONField(name = "evtTimestamp", format = "yyyy-MM-dd HH:mm:ss")
    private Timestamp evtTimestamp;
    private String ext6;
    private String ext7;
    private String ext8;
    private String ext9;
    private String ext10;
    private String mailFlg;

    @Id
    @Column(name = "DATA_SEQ_ID")
    public String getDataSeqId() {
        return dataSeqId;
    }

    public void setDataSeqId(String dataSeqId) {
        this.dataSeqId = dataSeqId;
    }

    @Basic
    @Column(name = "UNQ_SEQ_ID")
    public String getUnqSeqId() {
        return unqSeqId;
    }

    public void setUnqSeqId(String unqSeqId) {
        this.unqSeqId = unqSeqId;
    }

    @Basic
    @Column(name = "DATA_CATE")
    public String getDataCate() {
        return dataCate;
    }

    public void setDataCate(String dataCate) {
        this.dataCate = dataCate;
    }

    @Basic
    @Column(name = "DATA_ID")
    public String getDataId() {
        return dataId;
    }

    public void setDataId(String dataId) {
        this.dataId = dataId;
    }

    @Basic
    @Column(name = "DATA_EXT")
    public String getDataExt() {
        return dataExt;
    }

    public void setDataExt(String dataExt) {
        this.dataExt = dataExt;
    }

    @Basic
    @Column(name = "DATA_ITEM")
    public String getDataItem() {
        return dataItem;
    }

    public void setDataItem(String dataItem) {
        this.dataItem = dataItem;
    }

    @Basic
    @Column(name = "EXT_1")
    public String getExt1() {
        return ext1;
    }

    public void setExt1(String ext1) {
        this.ext1 = ext1;
    }

    @Basic
    @Column(name = "EXT_2")
    public String getExt2() {
        return ext2;
    }

    public void setExt2(String ext2) {
        this.ext2 = ext2;
    }

    @Basic
    @Column(name = "EXT_3")
    public String getExt3() {
        return ext3;
    }

    public void setExt3(String ext3) {
        this.ext3 = ext3;
    }

    @Basic
    @Column(name = "EXT_4")
    public String getExt4() {
        return ext4;
    }

    public void setExt4(String ext4) {
        this.ext4 = ext4;
    }

    @Basic
    @Column(name = "EXT_5")
    public String getExt5() {
        return ext5;
    }

    public void setExt5(String ext5) {
        this.ext5 = ext5;
    }

    @Basic
    @Column(name = "DATA_DESC")
    public String getDataDesc() {
        return dataDesc;
    }

    public void setDataDesc(String dataDesc) {
        this.dataDesc = dataDesc;
    }

    @Basic
    @Column(name = "EVT_USR")
    public String getEvtUsr() {
        return evtUsr;
    }

    public void setEvtUsr(String evtUsr) {
        this.evtUsr = evtUsr;
    }

    @Basic
    @Column(name = "EVT_TIMESTAMP")
    public Timestamp getEvtTimestamp() {
        return evtTimestamp;
    }

    public void setEvtTimestamp(Timestamp evtTimestamp) {
        this.evtTimestamp = evtTimestamp;
    }

    @Basic
    @Column(name = "EXT_6")
    public String getExt6() {
        return ext6;
    }

    public void setExt6(String ext6) {
        this.ext6 = ext6;
    }

    @Basic
    @Column(name = "EXT_7")
    public String getExt7() {
        return ext7;
    }

    public void setExt7(String ext7) {
        this.ext7 = ext7;
    }

    @Basic
    @Column(name = "EXT_8")
    public String getExt8() {
        return ext8;
    }

    public void setExt8(String ext8) {
        this.ext8 = ext8;
    }

    @Basic
    @Column(name = "EXT_9")
    public String getExt9() {
        return ext9;
    }

    public void setExt9(String ext9) {
        this.ext9 = ext9;
    }

    @Basic
    @Column(name = "EXT_10")
    public String getExt10() {
        return ext10;
    }

    public void setExt10(String ext10) {
        this.ext10 = ext10;
    }

    @Basic
    @Column(name = "MAIL_FLG")
    public String getMailFlg() {
        return mailFlg;
    }

    public void setMailFlg(String mailFlg) {
        this.mailFlg = mailFlg;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;

        BisDataEntity that = (BisDataEntity) o;

        if (dataSeqId != null ? !dataSeqId.equals(that.dataSeqId) : that.dataSeqId != null) return false;
        if (unqSeqId != null ? !unqSeqId.equals(that.unqSeqId) : that.unqSeqId != null) return false;
        if (dataCate != null ? !dataCate.equals(that.dataCate) : that.dataCate != null) return false;
        if (dataId != null ? !dataId.equals(that.dataId) : that.dataId != null) return false;
        if (dataExt != null ? !dataExt.equals(that.dataExt) : that.dataExt != null) return false;
        if (dataItem != null ? !dataItem.equals(that.dataItem) : that.dataItem != null) return false;
        if (ext1 != null ? !ext1.equals(that.ext1) : that.ext1 != null) return false;
        if (ext2 != null ? !ext2.equals(that.ext2) : that.ext2 != null) return false;
        if (ext3 != null ? !ext3.equals(that.ext3) : that.ext3 != null) return false;
        if (ext4 != null ? !ext4.equals(that.ext4) : that.ext4 != null) return false;
        if (ext5 != null ? !ext5.equals(that.ext5) : that.ext5 != null) return false;
        if (dataDesc != null ? !dataDesc.equals(that.dataDesc) : that.dataDesc != null) return false;
        if (evtUsr != null ? !evtUsr.equals(that.evtUsr) : that.evtUsr != null) return false;
        if (evtTimestamp != null ? !evtTimestamp.equals(that.evtTimestamp) : that.evtTimestamp != null) return false;
        if (ext6 != null ? !ext6.equals(that.ext6) : that.ext6 != null) return false;
        if (ext7 != null ? !ext7.equals(that.ext7) : that.ext7 != null) return false;
        if (ext8 != null ? !ext8.equals(that.ext8) : that.ext8 != null) return false;
        if (ext9 != null ? !ext9.equals(that.ext9) : that.ext9 != null) return false;
        if (ext10 != null ? !ext10.equals(that.ext10) : that.ext10 != null) return false;
        if (mailFlg != null ? !mailFlg.equals(that.mailFlg) : that.mailFlg != null) return false;

        return true;
    }

    @Override
    public int hashCode() {
        int result = dataSeqId != null ? dataSeqId.hashCode() : 0;
        result = 31 * result + (unqSeqId != null ? unqSeqId.hashCode() : 0);
        result = 31 * result + (dataCate != null ? dataCate.hashCode() : 0);
        result = 31 * result + (dataId != null ? dataId.hashCode() : 0);
        result = 31 * result + (dataExt != null ? dataExt.hashCode() : 0);
        result = 31 * result + (dataItem != null ? dataItem.hashCode() : 0);
        result = 31 * result + (ext1 != null ? ext1.hashCode() : 0);
        result = 31 * result + (ext2 != null ? ext2.hashCode() : 0);
        result = 31 * result + (ext3 != null ? ext3.hashCode() : 0);
        result = 31 * result + (ext4 != null ? ext4.hashCode() : 0);
        result = 31 * result + (ext5 != null ? ext5.hashCode() : 0);
        result = 31 * result + (dataDesc != null ? dataDesc.hashCode() : 0);
        result = 31 * result + (evtUsr != null ? evtUsr.hashCode() : 0);
        result = 31 * result + (evtTimestamp != null ? evtTimestamp.hashCode() : 0);
        result = 31 * result + (ext6 != null ? ext6.hashCode() : 0);
        result = 31 * result + (ext7 != null ? ext7.hashCode() : 0);
        result = 31 * result + (ext8 != null ? ext8.hashCode() : 0);
        result = 31 * result + (ext9 != null ? ext9.hashCode() : 0);
        result = 31 * result + (ext10 != null ? ext10.hashCode() : 0);
        result = 31 * result + (mailFlg != null ? mailFlg.hashCode() : 0);
        return result;
    }
}
